#pragma once
#include "Singleton.h"

#define	MAX_KEY	256

enum TAG_KEYSTATE
{
	KEY_DOWN,
	KEY_PRESSED,
	KEY_UP
};

class CInputManager : public CSingleton<CInputManager>
{
public:
	CInputManager(void);
	~CInputManager(void);

	bool Initialize();
	void Uninitialize();

	void UpdateKeyState();
	int  GetKeyState(const int VK_KEY);
	bool AnyKeyDwon();
private:
	bool m_IsCurrentKey[MAX_KEY];
	bool m_IsPreviousKey[MAX_KEY];
};

#define InputManager() CSingleton<CInputManager>::InstancePtr()